import numpy as np
import cv2 as cv

img = cv.imread('../pic/home.jpg')
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)

# 安装的版本太新，申请了算法专利保护，SIFT等已经不能够使用
# 创建一个SIFT检测器对象
sift = cv.xfeatures2d.SIFT_create()

# 使用SIFT检测器在灰度图像中检测关键点（例如角点或斑点）
kp = sift.detect(gray, None)

# 在原始图像上绘制检测到的关键点，结果存储在变量img中。该函数会在原始图像的每个关键点位置画一个圆
img = cv.drawKeypoints(gray, kp, img)
cv.imshow('sift_keypoints', img)

cv.waitKey()
cv.destroyAllWindows()
